﻿using System;
using Mjolnir.InfraEstrutura.Servicos;

namespace Mjolnir.Modelo.Ponteiros
{
  public class ServicoPonteiro2D : ServicoBase<Ponteiro2D, FabricaPonteiro2D>, IServicoPonteiro2D
  {
    /// <summary>
    /// Setar o valor (setValue).
    /// </summary>
    /// <param name="fonte">fonte.</param>
    public void setarValor(Ponteiro2D fonte)
    {
      entidade.x = fonte.x;
      entidade.y = fonte.y;
    }

    /// <summary>
    /// Setar o valor (setValue).
    /// </summary>
    /// <param name="fonte">fonte.</param>
    public void setarValor(PonteiroInteiro fonte)
    {
      entidade.x = fonte.x;
      entidade.x = fonte.y;
    }

    /// <summary>
    /// Distancia do centro - tângente (dist).
    /// </summary>
    /// <returns></returns>
    public double distancia()
    {
      return Math.Sqrt(entidade.x * entidade.x + entidade.y + entidade.y);
    }
  }
}
